\hypertarget{classsock_1_1net_1_1_tcp_connection_input_stream}{}\section{sock\+:\+:net\+:\+:Tcp\+Connection\+Input\+Stream Class Reference}
\label{classsock_1_1net_1_1_tcp_connection_input_stream}\index{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}}


Tcp连接输入流  




{\ttfamily \#include $<$tcp\+\_\+connection\+\_\+input\+\_\+stream.\+h$>$}

Inheritance diagram for sock\+:\+:net\+:\+:Tcp\+Connection\+Input\+Stream\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=3.000000cm]{classsock_1_1net_1_1_tcp_connection_input_stream}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
typedef \hyperlink{classsock_1_1net_1_1_tcp_connection_input_stream}{Tcp\+Connection\+Input\+Stream} \hyperlink{classsock_1_1net_1_1_tcp_connection_input_stream_a690444ed93ab89c6e700fcc2b9ea29ec}{self}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classsock_1_1net_1_1_tcp_connection_input_stream_ad081a3f28b123cbf4706e5a60deacc12}{Tcp\+Connection\+Input\+Stream} (\hyperlink{classsock_1_1net_1_1_socket}{Socket} \&sock, size\+\_\+t \hyperlink{classsock_1_1net_1_1_tcp_connection_stream_acbb9bc6316d1720f0921c7ec28dd2fdd}{size}=1024 $\ast$32)
\item 
\hyperlink{classsock_1_1net_1_1_tcp_connection_input_stream_ad8d1817d39adef43f715d0be8ecc8663}{Tcp\+Connection\+Input\+Stream} (\hyperlink{classsock_1_1net_1_1_socket}{Socket} \&sock, \hyperlink{namespacesock_1_1net_a2165d5b91136adc8c72ad25bfdbd0968}{Byte\+Buffer} buff, size\+\_\+t \hyperlink{classsock_1_1net_1_1_tcp_connection_stream_acbb9bc6316d1720f0921c7ec28dd2fdd}{size}=1024 $\ast$32)
\item 
virtual \hyperlink{classsock_1_1net_1_1_tcp_connection_input_stream_abc9c53b89bfae13f84012eef7ec43bc5}{$\sim$\+Tcp\+Connection\+Input\+Stream} ()
\item 
ssize\+\_\+t \hyperlink{classsock_1_1net_1_1_tcp_connection_input_stream_afd3cc5a82c38957358887f630c669f2f}{fill} (void)
\begin{DoxyCompactList}\small\item\em 从套接字读取数据填充流缓存 \end{DoxyCompactList}\item 
size\+\_\+t \hyperlink{classsock_1_1net_1_1_tcp_connection_input_stream_a3d1e476df311e515532166c6a6fdc311}{read} (char $\ast$buf, size\+\_\+t length)
\begin{DoxyCompactList}\small\item\em 从流中读取数据 \end{DoxyCompactList}\item 
size\+\_\+t \hyperlink{classsock_1_1net_1_1_tcp_connection_input_stream_aabc303d9d51251eaf4c24fb5dad2dfce}{peek} (char $\ast$buf, size\+\_\+t length)
\begin{DoxyCompactList}\small\item\em 从流中取出数据，不会把数据从流中删除 \end{DoxyCompactList}\item 
size\+\_\+t \hyperlink{classsock_1_1net_1_1_tcp_connection_input_stream_acd90e283c4c7e351313a3b1a9dc30c28}{skip} (size\+\_\+t length)
\begin{DoxyCompactList}\small\item\em 忽略数据 \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}
Tcp连接输入流 

\subsection{Member Typedef Documentation}
\hypertarget{classsock_1_1net_1_1_tcp_connection_input_stream_a690444ed93ab89c6e700fcc2b9ea29ec}{}\index{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}!self@{self}}
\index{self@{self}!sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}}
\subsubsection[{self}]{\setlength{\rightskip}{0pt plus 5cm}typedef {\bf Tcp\+Connection\+Input\+Stream} {\bf sock\+::net\+::\+Tcp\+Connection\+Input\+Stream\+::self}}\label{classsock_1_1net_1_1_tcp_connection_input_stream_a690444ed93ab89c6e700fcc2b9ea29ec}


\subsection{Constructor \& Destructor Documentation}
\hypertarget{classsock_1_1net_1_1_tcp_connection_input_stream_ad081a3f28b123cbf4706e5a60deacc12}{}\index{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}!Tcp\+Connection\+Input\+Stream@{Tcp\+Connection\+Input\+Stream}}
\index{Tcp\+Connection\+Input\+Stream@{Tcp\+Connection\+Input\+Stream}!sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}}
\subsubsection[{Tcp\+Connection\+Input\+Stream(\+Socket \&sock, size\+\_\+t size=1024 $\ast$32)}]{\setlength{\rightskip}{0pt plus 5cm}Tcp\+Connection\+Input\+Stream\+::\+Tcp\+Connection\+Input\+Stream (
\begin{DoxyParamCaption}
\item[{{\bf Socket} \&}]{sock, }
\item[{size\+\_\+t}]{size = {\ttfamily 1024~$\ast$~32}}
\end{DoxyParamCaption}
)}\label{classsock_1_1net_1_1_tcp_connection_input_stream_ad081a3f28b123cbf4706e5a60deacc12}
\hypertarget{classsock_1_1net_1_1_tcp_connection_input_stream_ad8d1817d39adef43f715d0be8ecc8663}{}\index{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}!Tcp\+Connection\+Input\+Stream@{Tcp\+Connection\+Input\+Stream}}
\index{Tcp\+Connection\+Input\+Stream@{Tcp\+Connection\+Input\+Stream}!sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}}
\subsubsection[{Tcp\+Connection\+Input\+Stream(\+Socket \&sock, Byte\+Buffer buff, size\+\_\+t size=1024 $\ast$32)}]{\setlength{\rightskip}{0pt plus 5cm}Tcp\+Connection\+Input\+Stream\+::\+Tcp\+Connection\+Input\+Stream (
\begin{DoxyParamCaption}
\item[{{\bf Socket} \&}]{sock, }
\item[{{\bf Byte\+Buffer}}]{buff, }
\item[{size\+\_\+t}]{size = {\ttfamily 1024~$\ast$~32}}
\end{DoxyParamCaption}
)}\label{classsock_1_1net_1_1_tcp_connection_input_stream_ad8d1817d39adef43f715d0be8ecc8663}
\hypertarget{classsock_1_1net_1_1_tcp_connection_input_stream_abc9c53b89bfae13f84012eef7ec43bc5}{}\index{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}!````~Tcp\+Connection\+Input\+Stream@{$\sim$\+Tcp\+Connection\+Input\+Stream}}
\index{````~Tcp\+Connection\+Input\+Stream@{$\sim$\+Tcp\+Connection\+Input\+Stream}!sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}}
\subsubsection[{$\sim$\+Tcp\+Connection\+Input\+Stream()}]{\setlength{\rightskip}{0pt plus 5cm}Tcp\+Connection\+Input\+Stream\+::$\sim$\+Tcp\+Connection\+Input\+Stream (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\label{classsock_1_1net_1_1_tcp_connection_input_stream_abc9c53b89bfae13f84012eef7ec43bc5}


\subsection{Member Function Documentation}
\hypertarget{classsock_1_1net_1_1_tcp_connection_input_stream_afd3cc5a82c38957358887f630c669f2f}{}\index{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}!fill@{fill}}
\index{fill@{fill}!sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}}
\subsubsection[{fill(void)}]{\setlength{\rightskip}{0pt plus 5cm}ssize\+\_\+t Tcp\+Connection\+Input\+Stream\+::fill (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}\label{classsock_1_1net_1_1_tcp_connection_input_stream_afd3cc5a82c38957358887f630c669f2f}


从套接字读取数据填充流缓存 

\begin{DoxyReturn}{Returns}
成功返回从套接字读取的字节数,失败返回\+S\+O\+C\+K\+E\+T\+\_\+\+E\+R\+R\+O\+R 
\end{DoxyReturn}
\hypertarget{classsock_1_1net_1_1_tcp_connection_input_stream_aabc303d9d51251eaf4c24fb5dad2dfce}{}\index{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}!peek@{peek}}
\index{peek@{peek}!sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}}
\subsubsection[{peek(char $\ast$buf, size\+\_\+t length)}]{\setlength{\rightskip}{0pt plus 5cm}size\+\_\+t sock\+::net\+::\+Tcp\+Connection\+Input\+Stream\+::peek (
\begin{DoxyParamCaption}
\item[{char $\ast$}]{buf, }
\item[{size\+\_\+t}]{length}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}\label{classsock_1_1net_1_1_tcp_connection_input_stream_aabc303d9d51251eaf4c24fb5dad2dfce}


从流中取出数据，不会把数据从流中删除 


\begin{DoxyParams}{Parameters}
{\em buf} & 缓存 \\
\hline
{\em length} & 缓存大小 \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
取到的数据长度 
\end{DoxyReturn}
\hypertarget{classsock_1_1net_1_1_tcp_connection_input_stream_a3d1e476df311e515532166c6a6fdc311}{}\index{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}!read@{read}}
\index{read@{read}!sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}}
\subsubsection[{read(char $\ast$buf, size\+\_\+t length)}]{\setlength{\rightskip}{0pt plus 5cm}size\+\_\+t sock\+::net\+::\+Tcp\+Connection\+Input\+Stream\+::read (
\begin{DoxyParamCaption}
\item[{char $\ast$}]{buf, }
\item[{size\+\_\+t}]{length}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}\label{classsock_1_1net_1_1_tcp_connection_input_stream_a3d1e476df311e515532166c6a6fdc311}


从流中读取数据 


\begin{DoxyParams}{Parameters}
{\em buf} & 缓存 \\
\hline
{\em length} & 缓存大小 \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
读到的数据长度 
\end{DoxyReturn}
\hypertarget{classsock_1_1net_1_1_tcp_connection_input_stream_acd90e283c4c7e351313a3b1a9dc30c28}{}\index{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}!skip@{skip}}
\index{skip@{skip}!sock\+::net\+::\+Tcp\+Connection\+Input\+Stream@{sock\+::net\+::\+Tcp\+Connection\+Input\+Stream}}
\subsubsection[{skip(size\+\_\+t length)}]{\setlength{\rightskip}{0pt plus 5cm}size\+\_\+t sock\+::net\+::\+Tcp\+Connection\+Input\+Stream\+::skip (
\begin{DoxyParamCaption}
\item[{size\+\_\+t}]{length}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}\label{classsock_1_1net_1_1_tcp_connection_input_stream_acd90e283c4c7e351313a3b1a9dc30c28}


忽略数据 


\begin{DoxyParams}{Parameters}
{\em length} & 忽略的长度 \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
忽略的数据长度 
\end{DoxyReturn}


The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
E\+:/git/sock/sock/net/\hyperlink{tcp__connection__input__stream_8h}{tcp\+\_\+connection\+\_\+input\+\_\+stream.\+h}\item 
E\+:/git/sock/src/net/\hyperlink{tcp__connection__input__stream_8cc}{tcp\+\_\+connection\+\_\+input\+\_\+stream.\+cc}\end{DoxyCompactItemize}
